<?php


class UnidadesController extends AppController {
	var $name = 'Unidades';
	var $components = array ('Pagination','Acl');
	var $helpers = array('Html','Form','Accessibility','Pagination');

	static function montaCombo(){
		// Gerando lista de Unidades da Entidade
		$condition = array('entidade_id'=>$this->getEntidade());
		$this->set('unidades', $this->Voluntario->Unidade->generateList($condition, null, null, '{n}.Unidade.id', '{n}.Unidade.nome'));

	}


	function index() {
		$this->set('title', 'Unidades');
		$condition = "entidade_id = ".$this->getEntidade();
		$unidades = $this->Unidade->findAll($condition);
		$this->set('unidades', $unidades);
	}

	function view( $id=null ) {
		if (!$id) $this->redirect('/unidades');
		$this->set('title','Visualizar unidade');
		$this->Unidade->id = $id;
		$this->set('unidade', $this->Unidade->read());
	}

	function add() {
		$this->set('title','Cadastrar unidade');
		$this->set('entidades', $this->Unidade->Entidade->generateList(null, null, null, '{n}.Entidade.id', '{n}.Entidade.nome'));
		$this->set('cidades', $this->Unidade->Cidade->generateList(null, null, null, '{n}.Cidade.id', '{n}.Cidade.nome'));
		if (!empty($this->data)) {
			$aco = new Aco();
			$aco->create($this->Unidade->id, null, $this->data['Unidade']['nome']);
			if ($this->Unidade->save($this->data)) {
				$_SESSION['mensagem']['success'][] = 'Unidade cadastrada com sucesso!';
			} else {
				$_SESSION['mensagem']['error'][] = 'Erro ao tentar cadastrar a unidade.';
			}
			$this->redirect('/unidades');
		}
	}

	function edit( $id=null) {
		if (!$id) $this->redirect('/unidades');
		$this->set('title','Editar unidade');
		$this->set('entidades', $this->Unidade->Entidade->generateList(null, null, null, '{n}.Entidade.id', '{n}.Entidade.nome'));
		$this->set('cidades', $this->Unidade->Cidade->generateList(null, null, null, '{n}.Cidade.id', '{n}.Cidade.nome'));
		$this->Unidade->id = $id;
		if (empty($this->data)) {
			$this->data = $this->Unidade->read();
		} else {
			if ($this->Unidade->save($this->data['Unidade'])) {
				$_SESSION['mensagem']['success'][] = 'Unidade alterada com sucesso!';
			} else {
				$_SESSION['mensagem']['error'][] = 'Erro ao tentar alterar a unidade.';
			}
			$this->redirect('/unidades');
		}
		$unidade = $this->Unidade->find(array('`Unidade`.id' => $id));
		$this->set('unidade', $unidade);
	}

	function delete($id) {
		if (!$id) $this->redirect('/unidades');
		if ($this->Unidade->del($id)) {
			$_SESSION['mensagem']['success'][] = 'Unidade excluida com sucesso!';
		} else {
			$_SESSION['mensagem']['error'][] = 'Erro ao tentar excluir a unidade.';
		}
		$this->redirect('/unidades');
	}
}
?>
